/**
 * 类名：HtmlParser
 * @author hmb
 * 创建日期： 2014-10-1 上午12:52:03
 *
 * 备注：解析HTML文档的类。其为xml解析类的子类。
 * 			保存方法没有重载，暂不知道会不会有异样
 * 
 */
package com.erms.util;

import java.util.ArrayList;
import java.util.List;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;

import com.erms.util.http.HttpResult;
import com.erms.util.http.XmlParserHandler;

/**
 * @author hmb
 * 
 */
public class HtmlParser extends XmlParser {
	/**
	 * @see com.erms.util.XmlParser#parse(java.lang.String,
	 *      com.erms.util.http.XmlParserHandler)
	 */
	@Override
	public <T> List<T> parse(String data, XmlParserHandler<T> handler) {

		Document document = Jsoup.parse(data.toLowerCase());
		if (document == null) {
			handler.onError();
			return new ArrayList<>();
		}
		return handler.onParse(document);
	}
	public <T> List<T> parse(HttpResult result, XmlParserHandler<T> handler) {

		/*if (result.getStatusLine().getStatusCode() != 200) {
			handler.onError();
			return new ArrayList<>();
		}*/
		Document document = Jsoup.parse(result.getContent().toLowerCase());
		if (document == null) {
			handler.onError();
			return new ArrayList<>();
		}
		return handler.onParse(document);
	}
}
